<template>
  <div>
    <h3>按钮和输入框</h3>
    <input type="text" v-if="flag" @blur="flag = false" ref="inp">
    <button v-else @click='add'>按钮</button>
  </div>
</template>

<script>
export default {
  data(){
    return {
      flag: true
    }
  },
  methods:{
    add(){
     this.flag=true
      // Vue 的数据驱动视图。是说数据变化了，页面会自动更新；但是也不是立即更新
      // Vue 官方的说法是，会在下次循环的时候更新页面
      // 如果希望马上获取到页面元素，可以将代码写到 this.$nextTick 中
    this.$nextTick(()=>{
      this.$refs.inp.focus() //让输入框获取焦点
    })
    }
  }
}
</script>

<style>

</style>